課程資訊
課程名稱
R語言與文字探勘:公共議題之應用
R Language and Text Mining: An Application of Public Issues? 
開課學期
110-1 
授課對象
社會科學院  公共事務研究所  
授課教師
王 貿 
課號
GIPA5011 
課程識別碼
343 U0200 
班次
 
學分
2.0 
全/半年
半年 
必/選修
選修 
上課時間
星期二6,7(13:20~15:10) 
上課地點
 
備註
上課教室為社科研607。
限本系所學生(含輔系、雙修生)
總人數上限:10人 
 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

文字資料(text as data)是目前最多的一種資料儲存形式,以往受限於分析工具,較常是透過質性分析方式來詮釋、理解文字,但隨著電腦運算能力的大幅提升以及分析模型的演進,將文字資料進行模型運算已不再是遙不可及的想法。就公共議題的分析而言,文字探勘可以協助我們理解:不同傳播媒介對公共議題的報導取向與態度立場有何不同?不同時空環境下對公共議題的討論趨勢與解讀有何不同?公共政策有哪些不同的論述架構?不同利害關係人對政策論述是否有不同的偏好?但前提是,必須精熟一門可以處理文字資料的程式語言,以及理解各種文字分析模型的原理。本課程主要在介紹R語言以及文字探勘技術的操作演練,並與公共議題的分析結合,提供學生分析公共議題的另一種研究工具。

學習程式設計已不再是理科生的專利,隨著程式語言愈趨接近人用語言、應用面向逐漸擴及人文社會科學、線上學習資源的易得性等因素,都使得學習門檻越來越低。但作為一名人文社會科學的學生而言,如何挑選適合的程式語言及學習資源,反而會是邁開學習之路的第一個挑戰。R語言是由統計學家所創造,對沒有程式設計背景的學生而言,其動態語言與物件導向的性質,會讓編寫程式更容易上手。另外,R語言本身具有開放的技術支持社群、詳細的套件使用說明等優勢,都使得R語言相當適合作為人文社會科學學生的第一門程式語言課。

本課程講授R語言基礎,主要的內容包含R語言基本簡介、資料篩選與整理、資料探索與分析、程式設計基礎外,會從文字資料前處理(preprocessing)開始,也就是當拿到一份文字資料時,在分析前所必須要做的資料清理程序。此外,還包括基礎的斷詞、資料視覺化與爬蟲技術的介紹。奠定好這些基礎後,將正式進入文字探勘的世界,介紹各種常用的文字分析技術與模型,並讓同學能夠實際操作演練。當然,此次課程並無法全面地介紹R語言及其在文字探勘的各種應用,但希望透過對於R語言與文字探勘的基本認識,修課同學能夠將R語言作為後續執行各種研究分析的工具,或是進一步涉獵進階統計分析、機器學習、社會網絡分析、空間分析等領域。 

課程目標
1. 熟悉R語言基礎及運用其進行文字資料前處理。
2. 型塑研究問題,並挑選適切的文字資料與分析方法回答該問題。
3. 透過視覺化的方式呈現,有效地與人溝通研究成果。 
課程要求
1. 請自備筆電,並依照課程指示安裝R、RStudio及相關套件。
2. 作業請以R Markdown及html檔繳交。
3. 作業可與同學討論,但請各自撰寫,不得抄襲作業。
4. 將使用Piazza(https://piazza.com/)線上討論平臺。

本課程對學生課後學習之要求:
1. 將使用DataCamp for the Classroom (https://www.datacamp.com) 的功能,提供修課同學搭配本課程進度,完成相關之線上課程。
2. 每週上課之程式碼皆會提供修課學生,至下周上課前,請至少複習過程式碼一次。若有不清楚之處,可至線上討論。 
預期每週課後學習時數
 
Office Hours
每週一 15:10~16:00 
指定閱讀
將於第一週上課時公布。 
參考書目
將於第一週上課時公布。 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
課堂作業 
60% 
 
2. 
期末口頭報告 
10% 
 
3. 
期末書面報告 
25% 
 
4. 
線上討論 
5% 
 
 
課程進度
週次
日期
單元主題
第1週
9/28  課程概覽 
第2週
10/05  R語言基礎:簡介 
第3週
10/12  R語言基礎:資料篩選與整理 
第4週
10/19  R語言基礎:資料探索與分析 
第5週
10/26  R語言基礎:程式設計基礎 
第6週
11/02  文字資料前處理(regex, tm, stringr) 
第7週
11/09  文字資料前處理:斷詞(tidytext, jiebaR) 
第8週
11/16  資料視覺化(ggplot2) 
第9週
11/23  爬蟲(web scraping) 
第10週
11/30  期末報告主題說明 
第11週
12/07  詞袋(bag of words)模型 
第12週
12/14  情緒分析(sentiment analysis) 
第13週
12/21  主題模型(topic models) 
第14週
12/28  自然語言處理(Natural Language Processing, NLP) 
第15週
1/04  詞嵌入(word embedding)模型 
第16週
1/11  資料溝通(shiny) 
第17週
1/18  期末口頭報告 
第18週
1/25  期末口頭報告